package cn.rengy.tpa.wxmp.pay.protocol.unifiedorder;

import java.math.BigDecimal;

import cn.rengy.tpa.wxmp.util.WXPayConstants;
import lombok.Getter;
import lombok.Setter;

/**
 * 统一下单请求对象
 */
@Getter
@Setter
public class UnifiedorderDTO {

	private String appid;
	/**必填：商户号*/
	private String mch_id;
	/**终端设备号(门店号或收银设备ID)，注意：PC网页或公众号内支付请传"WEB"*/
	private String device_info = "WEB";
	/**必填：商品简单描述*/
	private String body;
	/**单品优惠字段*/
	private String detail;
	
	/**附加数据，在查询API和支付通知中原样返回，该字段主要用于商户携带订单的自定义数据*/
	private String attach;
	
	/**必填：商户系统内部的订单号,32个字符*/
	private String out_trade_no;
	
	private BigDecimal amount;
	/**必填：用户端IP,支持ipv4、ipv6格式*/
	private String spbill_create_ip;
	
	/**订单生成时间，格式为yyyyMMddHHmmss，如2009年12月25日9点10分10秒表示为20091225091010*/
	private String time_start;
	
	/**订单失效时间，格式为yyyyMMddHHmmss，如2009年12月27日9点10分10秒表示为20091227091010。 注意：最短失效时间间隔必须大于5分钟*/
	private String time_expire;
	
	/**商品标记，代金券或立减优惠功能的参数*/
	private String goods_tag;
	
	/**必填：接收微信支付异步通知回调地址，通知url必须为直接可访问的url，不能携带参数。*/
	private String notify_url;
	
	private WXPayConstants.IsProfitSharing profit_sharing;
	
	/**
		JSAPI -JSAPI支付
		NATIVE -Native支付
		APP -APP支付
		H5  -MWEB*/
	private WXPayConstants.TradeType trade_type;
	
	/**trade_type=NATIVE，此参数必传。此id为二维码中包含的商品ID，商户自行定义。*/
	private String product_id;
	
	/**指定支付方式no_credit--指定不能使用信用卡支付*/
	private WXPayConstants.LimitPayType limit_pay;
	
	private String openid;

	/**电子发票入口开放标识,传入Y时，支付成功消息和支付详情页将出现开票入口。需要在微信支付商户平台或微信公众平台开通电子发票功能，传此字段才可生效*/
	private String receipt;
	
	
	
	private String scene_info;
	
	
	
	
}
